package day230322;

import java.util.Scanner;

/**
 * @author 兴趣使然黄小黄
 * @version 1.0
 * @date 2023/3/22 22:52
 * 进制转化（通过全部样例）
 */
public class Main22 {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int number = in.nextInt(); // 输入的32位整数
        int order = in.nextInt(); // 期望转化的进制
        String ret = baseConversion(number, order);
        System.out.println(ret);
        in.close();
    }

    // 进制转化
    public static String baseConversion(int number, int order) {
        // 如果是10进制或者为0
        if (order == 10 || number == 0) {
            return String.valueOf(number);
        }
        // 进制转化
        StringBuilder stringBuilder = new StringBuilder();
        // 对负数进行处理
        boolean flag = false; // 标记一下是不是负数
        if (number < 0) {
            flag = true;
            number = -number; // 转成正数同一处理
        }
        while (number > 0) {
            int temp = number % order;
            stringBuilder.append(parseNumber(temp));
            number /= order;
        }
        // 如果是负数额外加符号
        if (flag) {
            stringBuilder.append("-");
        }
        return stringBuilder.reverse().toString(); // 反转后返回
    }

    // 数字处理
    public static String parseNumber(int num) {
        String ret = "";
        if (num < 10) {
            return String.valueOf(num);
        } else {
            switch (num) {
                case 10:
                    ret = String.valueOf('A');
                    break;
                case 11:
                    ret = String.valueOf('B');
                    break;
                case 12:
                    ret = String.valueOf('C');
                    break;
                case 13:
                    ret = String.valueOf('D');
                    break;
                case 14:
                    ret = String.valueOf('E');
                    break;
                case 15:
                    ret = String.valueOf('F');
                    break;
            }
        }
        return ret;
    }

}
